home *** CD-ROM | disk | FTP | other *** search
/ IRIX Base Documentation 2001 May / SGI IRIX Base Documentation 2001 May.iso / usr / share / catman / p_man / cat3 / Xi / XGetDeviceModifierMapping.z / XGetDeviceModifierMapping
Encoding:
Text File  |  1998-10-30  |  9.2 KB  |  199 lines

  1.  
  2.  
  3.  
  4.      XXXXGGGGeeeettttDDDDeeeevvvviiiicccceeeeMMMMooooddddiiiiffffiiiieeeerrrrMMMMaaaappppppppiiiinnnngggg((((3333XXXX11111111))))XXXX VVVVeeeerrrrssssiiiioooonnnn 11111111 ((((RRRReeeelllleeeeaaaasssseeee 6666....3333))))XXXXGGGGeeeettttDDDDeeeevvvviiiicccceeeeMMMMooooddddiiiiffffiiiieeeerrrrMMMMaaaappppppppiiiinnnngggg((((3333XXXX11111111))))
  5.  
  6.  
  7.  
  8.      NNNNAAAAMMMMEEEE
  9.           XGetDeviceModifierMapping, XSetDeviceModifierMapping - query
  10.           or change device modifier mappings
  11.  
  12.      SSSSYYYYNNNNTTTTAAAAXXXX
  13.           XXXXSSSSeeeettttDDDDeeeevvvviiiicccceeeeMMMMooooddddiiiiffffiiiieeeerrrrMMMMaaaappppppppiiiinnnngggg((((_d_i_s_p_l_a_y,,,, _d_e_v_i_c_e,,,, _m_o_d_m_a_p))))
  14.                 DDDDiiiissssppppllllaaaayyyy ****_d_i_s_p_l_a_y;;;;
  15.                 XXXXDDDDeeeevvvviiiicccceeee ****_d_e_v_i_c_e;;;;
  16.                 XXXXMMMMooooddddiiiiffffiiiieeeerrrrKKKKeeeeyyyymmmmaaaapppp  ****_m_o_d_m_a_p;;;;
  17.  
  18.           XXXXMMMMooooddddiiiiffffiiiieeeerrrrKKKKeeeeyyyymmmmaaaapppp ****XXXXGGGGeeeettttDDDDeeeevvvviiiicccceeeeMMMMooooddddiiiiffffiiiieeeerrrrMMMMaaaappppppppiiiinnnngggg((((_d_i_s_p_l_a_y,,,, _d_e_v_i_c_e))))
  19.                 DDDDiiiissssppppllllaaaayyyy ****_d_i_s_p_l_a_y;;;;
  20.                 XXXXDDDDeeeevvvviiiicccceeee ****_d_e_v_i_c_e;;;;
  21.  
  22.  
  23.      AAAARRRRGGGGUUUUMMMMEEEENNNNTTTTSSSS
  24.           _d_i_s_p_l_a_y     Specifies the connection to the X server.
  25.  
  26.           _d_e_v_i_c_e      Specifies the device whose modifier mapping is
  27.                       to be queried or modified.
  28.  
  29.           _m_o_d_m_a_p      Specifies a pointer to the _X_M_o_d_i_f_i_e_r_K_e_y_m_a_p
  30.                       structure.
  31.  
  32.      DDDDEEEESSSSCCCCRRRRIIIIPPPPTTTTIIIIOOOONNNN
  33.           The _X_S_e_t_D_e_v_i_c_e_M_o_d_i_f_i_e_r_M_a_p_p_i_n_g request specifies the KeyCodes
  34.           of the keys (if any) that are to be used as modifiers for
  35.           the specified device.  If it succeeds, the X server
  36.           generates a _D_e_v_i_c_e_M_a_p_p_i_n_g_N_o_t_i_f_y event, and
  37.           _X_S_e_t_D_e_v_i_c_e_M_o_d_i_f_i_e_r_M_a_p_p_i_n_g returns _M_a_p_p_i_n_g_S_u_c_c_e_s_s.  X permits
  38.           at most eight modifier keys.  If more than eight are
  39.           specified in the _X_M_o_d_i_f_i_e_r_K_e_y_m_a_p structure, a _B_a_d_L_e_n_g_t_h
  40.           error results.
  41.  
  42.           The modifiermap member of the _X_M_o_d_i_f_i_e_r_K_e_y_m_a_p structure
  43.           contains eight sets of max_keypermod KeyCodes, one for each
  44.           modifier in the order _S_h_i_f_t, _L_o_c_k, _C_o_n_t_r_o_l, _M_o_d_1, _M_o_d_2,
  45.           _M_o_d_3, _M_o_d_4, and _M_o_d_5.  Only nonzero KeyCodes have meaning in
  46.           each set, and zero KeyCodes are ignored.  In addition, all
  47.           of the nonzero KeyCodes must be in the range specified by
  48.           min_keycode and max_keycode as returned by
  49.           _X_L_i_s_t_I_n_p_u_t_D_e_v_i_c_e_s, or a _B_a_d_V_a_l_u_e error results.  No KeyCode
  50.           may appear twice in the entire map, or a _B_a_d_V_a_l_u_e error
  51.           results.
  52.  
  53.           An X server can impose restrictions on how modifiers can be
  54.           changed, for example, if certain keys do not generate up
  55.           transitions in hardware, if auto-repeat cannot be disabled
  56.           on certain keys, or if multiple modifier keys are not
  57.           supported. If some such restriction is violated, the status
  58.           reply is _M_a_p_p_i_n_g_F_a_i_l_e_d, and none of the modifiers are
  59.           changed.  If the new KeyCodes specified for a modifier
  60.  
  61.  
  62.  
  63.      Page 1                                          (printed 4/30/98)
  64.  
  65.  
  66.  
  67.  
  68.  
  69.  
  70.      XXXXGGGGeeeettttDDDDeeeevvvviiiicccceeeeMMMMooooddddiiiiffffiiiieeeerrrrMMMMaaaappppppppiiiinnnngggg((((3333XXXX11111111))))XXXX VVVVeeeerrrrssssiiiioooonnnn 11111111 ((((RRRReeeelllleeeeaaaasssseeee 6666....3333))))XXXXGGGGeeeettttDDDDeeeevvvviiiicccceeeeMMMMooooddddiiiiffffiiiieeeerrrrMMMMaaaappppppppiiiinnnngggg((((3333XXXX11111111))))
  71.  
  72.  
  73.  
  74.           differ from those currently defined and any (current or new)
  75.           keys for that modifier are in the logically down state,
  76.           _X_S_e_t_D_e_v_i_c_e_M_o_d_i_f_i_e_r_M_a_p_p_i_n_g returns _M_a_p_p_i_n_g_B_u_s_y, and none of
  77.           the modifiers is changed.
  78.  
  79.           _X_S_e_t_D_e_v_i_c_e_M_o_d_i_f_i_e_r_M_a_p_p_i_n_g can generate _B_a_d_L_e_n_g_t_h_P,
  80.           _B_a_d_D_e_v_i_c_e, _B_a_d_M_a_t_c_h, _B_a_d_A_l_l_o_c, _a_n_d _B_a_d_V_a_l_u_e _e_r_r_o_r_s.
  81.  
  82.           The _X_G_e_t_D_e_v_i_c_e_M_o_d_i_f_i_e_r_M_a_p_p_i_n_g request returns a pointer to a
  83.           newly created _X_M_o_d_i_f_i_e_r_K_e_y_m_a_p structure that contains the
  84.           keys being used as modifiers.  The structure should be freed
  85.           after use by calling _X_F_r_e_e_M_o_d_i_f_i_e_r_M_a_p_p_i_n_g .  If only zero
  86.           values appear in the set for any modifier, that modifier is
  87.           disabled.
  88.  
  89.           _X_G_e_t_D_e_v_i_c_e_M_o_d_i_f_i_e_r_M_a_p_p_i_n_g can generate _B_a_d_D_e_v_i_c_e and
  90.           _B_a_d_M_a_t_c_h errors.
  91.  
  92.      SSSSTTTTRRRRUUUUCCCCTTTTUUUURRRREEEESSSS
  93.           The _X_M_o_d_i_f_i_e_r_K_e_y_m_a_p structure contains:
  94.  
  95.           typedef struct {
  96.                int max_keypermod;
  97.                KeyCode *modifiermap;
  98.           } XModifierKeymap;
  99.  
  100.      DDDDIIIIAAAAGGGGNNNNOOOOSSSSTTTTIIIICCCCSSSS
  101.           _B_a_d_L_e_n_g_t_h   More than eight keys were specified in the
  102.                       _X_M_o_d_i_f_i_e_r_K_e_y_m_a_p structure.
  103.  
  104.           _B_a_d_A_l_l_o_c    The server failed to allocate the requested
  105.                       resource or server memory.
  106.  
  107.           _B_a_d_D_e_v_i_c_e   An invalid device was specified.  The specified
  108.                       device does not exist or has not been opened by
  109.                       this client via _X_O_p_e_n_I_n_p_u_t_D_e_v_i_c_e.  This error
  110.                       may also occur if the specified device is the X
  111.                       keyboard or X pointer device.
  112.  
  113.           _B_a_d_M_a_t_c_h    This error may occur if an
  114.                       _X_G_e_t_D_e_v_i_c_e_M_o_d_i_f_i_e_r_M_a_p_p_i_n_g or
  115.                       _X_C_h_a_n_g_e_D_e_v_i_c_e_M_o_d_i_f_i_e_r_M_a_p_p_i_n_g request was made
  116.                       specifying a device that has no keys.
  117.  
  118.           _B_a_d_V_a_l_u_e    Some numeric value falls outside the range of
  119.                       values accepted by the request.  Unless a
  120.                       specific range is specified for an argument, the
  121.                       full range defined by the argument's type is
  122.                       accepted.  Any argument defined as a set of
  123.                       alternatives can generate this error.
  124.  
  125.      SSSSEEEEEEEE AAAALLLLSSSSOOOO
  126.  
  127.  
  128.  
  129.      PPPPaaaaggggeeee 2222                                          ((((pppprrrriiiinnnntttteeeedddd 4444////33330000////99998888))))
  130.  
  131.  
  132.  
  133.  
  134.  
  135.  
  136.      XXXXGGGGeeeettttDDDDeeeevvvviiiicccceeeeMMMMooooddddiiiiffffiiiieeeerrrrMMMMaaaappppppppiiiinnnngggg((((3333XXXX11111111))))XXXX VVVVeeeerrrrssssiiiioooonnnn 11111111 ((((RRRReeeelllleeeeaaaasssseeee 6666....3333))))XXXXGGGGeeeettttDDDDeeeevvvviiiicccceeeeMMMMooooddddiiiiffffiiiieeeerrrrMMMMaaaappppppppiiiinnnngggg((((3333XXXX11111111))))
  137.  
  138.  
  139.  
  140.           XSetDeviceKeyMapping(3X11)
  141.           XSetDeviceButtonMapping(3X11)
  142.           _P_r_o_g_r_a_m_m_i_n_g _W_i_t_h _X_l_i_b
  143.  
  144.  
  145.  
  146.  
  147.  
  148.  
  149.  
  150.  
  151.  
  152.  
  153.  
  154.  
  155.  
  156.  
  157.  
  158.  
  159.  
  160.  
  161.  
  162.  
  163.  
  164.  
  165.  
  166.  
  167.  
  168.  
  169.  
  170.  
  171.  
  172.  
  173.  
  174.  
  175.  
  176.  
  177.  
  178.  
  179.  
  180.  
  181.  
  182.  
  183.  
  184.  
  185.  
  186.  
  187.  
  188.  
  189.  
  190.  
  191.  
  192.  
  193.  
  194.  
  195.      Page 3                                          (printed 4/30/98)
  196.  
  197.  
  198.  
  199.